package com.sinping.qh.service.auth;

import com.sinping.qh.domain.auth.Resource;
import com.sinping.qh.dto.auth.ResourceDTO;
import com.baomidou.mybatisplus.service.IService;

import java.util.List;
import java.util.Set;

/**
 * <p>
 *  服务类
 * </p>
 *
 * @author 杨云博
 * @since 2017-12-18
 */
public interface IResourceService extends IService<Resource> {
    public List<Resource> getResourceByUserId(String userid);

    public List<Resource> getResourceByResourceIds(Set<String> ResourceIds);



    /**
     * @方法名称: getResourceListTree
     * @功能描述: 获取资源树
     * @作者:杨云博
     * @创建时间:2017/12/26 14:35
     * @param resource
     * return java.util.List<com.sinping.woniu.dto.ResourceDTO>
     */;
    public List<ResourceDTO> getResourceListTree(Resource resource);

    /**
     * @方法名称: createTreeByResource
     * @功能描述: 根据入参资源创建资源树
     * @作者:杨云博
     * @创建时间:2017/12/26 18:23
     * @param resource
     * return java.util.List<com.sinping.woniu.dto.auth.ResourceDTO>
     */
    public List<ResourceDTO> createTreeByResource(List<Resource> resource);

    /**
     * 通过资源的uri与requestType来判断唯一判断资源是否存在
     * @param uri     资源的uri
     * @param reqType 资源的请求类型
     * @param id 资源的id
     * @return  存在返回true ，不存在返回false
     */
    boolean isExistUriAndRequestType(String uri, String reqType,String id);


}
